import request from './request' // 导入封装的axios请求实例

// 用户登录API
// @param data: 包含用户名和密码的对象
// @returns Promise: 返回登录结果
export const login = (data: { username: string; password: string }) => {
  return request({ // 使用封装的request函数发送HTTP请求
    url: '/auth/login', // 登录接口的URL路径
    method: 'post', // HTTP方法：POST
    data // 请求体数据：用户名和密码
  })
}

// 用户注册API
// @param data: 包含用户名、邮箱和密码的对象
// @returns Promise: 返回注册结果
export const register = (data: { username: string; email: string; password: string }) => {
  return request({ // 使用封装的request函数发送HTTP请求
    url: '/auth/register', // 注册接口的URL路径
    method: 'post', // HTTP方法：POST
    data // 请求体数据：用户名、邮箱和密码
  })
}

// 获取用户信息API
// @param userId: 用户ID
// @returns Promise: 返回用户详细信息
export const getUserInfo = (userId: number) => {
  return request({ // 使用封装的request函数发送HTTP请求
    url: '/auth/user', // 获取用户信息接口的URL路径
    method: 'get', // HTTP方法：GET
    params: { userId } // 查询参数：用户ID
  })
}

// 用户登出API
// @returns Promise: 返回登出结果
export const logout = () => {
  return request({ // 使用封装的request函数发送HTTP请求
    url: '/auth/logout', // 登出接口的URL路径
    method: 'post' // HTTP方法：POST
  })
} 